home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 25 / Cream of the Crop 25.iso / compress / shaid220.zip / ARCHID.DOC < prev    next >
Text File  |  1997-04-30  |  18KB  |  376 lines

  1. SH Archive Identifier Version 2.20             (c) 1996-1997 SH Software
  2. Documentation
  3.  
  4. What?
  5. -----
  6. SH Archive Identifier is a small utility, used from the command line
  7. to identify various archive formats.
  8.  
  9. It relates in a verbal form which kind of archive it deals with and
  10. returns the certain an errorlevel for Dos. It can be used both for
  11. single files when an errorlevel is returned, and for multiple files
  12. (with wildcards) when a certain errorlevel is returned to indicate a
  13. wildcard operation.
  14.  
  15. Usage
  16. -----
  17. In my own BBS (Reflection) I use this utility to add randomly named
  18. advertisiments into an archive, because the upload checker I use does
  19. not support this feature. Of course, it can be used, for example, to
  20. check viruses inside archivers, etc.
  21.  
  22. Inside this archive there are two batch files to demonstrate the
  23. function and flexibility of SH Archive Identifier. First, there is
  24. PCBTEST.BAT which may be the base for building BAT files. Secondly,
  25. there is ACVT.BTM (4dos batch file) which may be used to convert ZIP,
  26. ARJ, LHA, JAR, and RKive files between each other.
  27.  
  28. List of errorlevels and short names
  29. -----------------------------------
  30. The list can also be presented, in a brief form, by ARCHID itself.
  31.  
  32. "Call" column means a short name for an archive whereby the type is
  33. told to ARCHID if default errorlevels are not desirable to be used -
  34. see "Usages".
  35.  
  36. ────────────────────────────┬─────┬─────────────────────────────────────
  37. Default errorlevel + archive│Call │ Tested / Information
  38. ────────────────────────────┼─────┼─────────────────────────────────────
  39.  1 - ARJ archive            │arj  │ ARJ 0.20, 1.10, 2.00, 2.10,
  40.                             │     │   2.20, 2.30, 2.50a, 2.55b
  41.  2 - ZIP archive            │zip  │ PKZIP 2.04g, ZIP 2.0
  42.  3 - RAR archive            │rar  │ RAR 1.55, 2.00 beta, 2.00, 2.01
  43.  4 - LHA archive            │lha  │ LHA 2.13, 2.55b
  44.  5 - LHarc archive          │lharc│ LHA 2.13 with "old method"
  45.  6 - UC2 archive            │uc2  │ UC r3 pro
  46.  7 - GZIP (GNU ZIP) archive │gzip │ GNUZIP 2.1.4
  47.  8 - ARC archive            │arc  │ ARC 6.02
  48.  9 - HA archive             │ha   │ HA 0.999b
  49. 10 - Hyper archive          │hyp  │ HYPER 2.5, 2.6 (German)
  50. 11 - PAK archive            │pak  │ PAK 2.10
  51. 12 - PKPAK archive          │pkpak│ PKARC 3.5, PKPAK 3.61
  52. 13 - SQZ archive            │sqz  │ SQZ 1.08.3
  53. 14 - ZOO archive            │zoo  │ ZOO 2.1
  54. 15 - AIN archive            │ain  │ AIN 2.2
  55. 16 - ARX archive            │arx  │ ARX 1.0
  56. 17 - BSA archive            │bsa  │ BSA 2.00
  57. 18 - ChArc archive          │chz  │ CHARC 1.2
  58. 19 - Codec archive          │cdc  │ CODEC 3.10
  59. 20 - HAP 3 archive          │hap  │ HAP 3.00, THAP 1.02c
  60. 21 - HPack archive          │hpk  │ HPACK 0.79c0
  61. 22 - CrossePAC archive      │pac  │ CPAC 1.35
  62. 23 - JRchive archive        │jrc  │ JRC 1.10
  63. 24 - Limit archive          │lim  │ LIMIT 1.2
  64. 25 - MAR archive            │mar  │ MAR 1.0
  65. 26 - PUT & GET  archive     │put  │ PUT 3.34
  66. 27 - SAR archive            │sar  │ SAR 1.00
  67. 28 - SqWez archive          │sqw  │ SQWEZ 2.2
  68. 29 - Quantum archive        │paq  │ QUANTUM 0.96 beta, 0.97 beta
  69. 30 - YAC archive            │yac  │ YAC 1.02
  70. 31 - X1 archive             │x1   │ X1 0.94h beta
  71. 32 - AMGC archive           │amg  │ AMGC 2.2
  72. 33 - DWC archive            │dwc  │ DWC A5.01
  73. 34 - Larc archive           │lrc  │ LARC 3.33
  74. 35 - LHark archive          │lhk  │ LHARK 0.3o, 0.4b
  75. 36 - FOXSQZ archive         │fox  │ FOXSQZ 1.6i BETA
  76. 37 - MDCD archive           │md   │ MDCD 1.0
  77. 38 - Quark archive          │ark  │ QUARK 1.0 beta
  78. 39 - ACB archive            │acb  │ ACB 1.13b, 1.23b, 1.29b, 2.00c
  79. 40 - RKIVE archive          │rkv  │ RKIVE 1.0, 1.1, 1.2, 1.3, 1.4
  80. 41 - JAR archive            │jar  │ JAR 1.01 beta_2, 1.01 beta_3
  81. 42 - Dirks Pack archive     │dpa  │ DPA 1.1a
  82. 43 - ESP archive            │esp  │ ESP 1.8, 1.9beta
  83. 44 - ARJZ archive           │arjz │ ARJZ 0.15 alpha
  84. 45 - UFA archive            │ufa  │ UFA 0.00 (Alpha+Gamma)/2, 0.01
  85. 46 - TSComp archive         │tsc  │ The Stirling Compressor 1.3.21
  86. 47 - LEO archive            │leo  │ PakLEO 1.06
  87. 48 - ZAR archive            │zar  │ Zip-Archiv 2.00
  88. 49 - SKY archive            │sky  │ SKY 1.01, 1.02, 1.03
  89. 50 - SOF archive            │sof  │ RESOF 2.0B
  90. 51 - ZPack archive          │zpk  │ ZPack Lite 1.0
  91. 52 - MP3 archive            │mp3  │ Power Compressor III
  92. 53 - ZET archive            │zet  │ ZET 0.10 BETA
  93. ────────────────────────────┼─────┼─────────────────────────────────────
  94. 101 - ARJ SFX executable    │arj-x│ ARJ 0.20, 1.10, 2.00, 2.10, 2.20,
  95.                             │     │   2.30, 2.50a, 2.55b
  96. 102 - ZIP SFX executable    │zip-x│ PKZIP 2.04g, InfoZip 5.20
  97. 103 - ZIP SFXjr executable  │zjr-x│ PKZIP 2.04g
  98. 104 - RAR SFX executable    │rar-x│ RAR 1.55, 2.00 beta, 2.00, 2.01
  99. 105 - LHA SFX executable    │lha-x│ LHA 2.13
  100. 106 - LHarc SFX executable  │lhc-x│ (tested)
  101. 107 - ARX SFX executable    │arx-x│ ARX 1.00, both COM and EXE
  102. 108 - BSA SFX executable    │bsa-x│ BSA 2.00
  103. 109 - ChArc SFX executable  │chz-x│ CHARC 1.2
  104. 110 - SqWez SFX executable  │sqw-x│ SQWEZ 2.2
  105. 111 - SQZ SFX executable    │sqz-x│ SQZ 1.08.3
  106. 112 - SQZ SFXjr executable  │sqj-x│ SQZ 1.08.3
  107. 113 - PAK SFX executable    │pak-x│ PAK 2.51
  108. 114 - LARC SFX executable   │lrc-x│ LARC 3.33, both COM and EXE
  109. 115 - LHark SFX executable  │lhk-x│ LHARK 0.3o, 0.4b
  110. 116 - Quark SFX executable  │ark-x│ Quark 1.0Beta
  111. 117 - ESP SFX executable    │esp-x│ ESP 1.8, 1.9beta
  112. 118 - AIN SFX executable    │ain-x│ AIN 2.32
  113. 119 - LEO SFX executable    │leo-x│ PLL2EXE 1.05
  114. ────────────────────────────┼─────┼─────────────────────────────────────
  115. 248 - Wildcards used        │     │ If wildcards have been specified,
  116.                             │     │ none of the above errorlevels will
  117.                             │     │ be returned but this.
  118. 249 - Invalid shortname     │     │ Packer's callname, given in
  119.                             │     │ parameters above 2, is not
  120.                             │     │ recognized. See "ways to use".
  121. 250 - Insufficient memory   │     │ There is not enough memory for
  122.                             │     │ necessary buffer, so memory is 70 kB
  123.                             │     │ less.
  124. 251 - File close error      │     │ Should never happen 1-user systems.
  125.                             │     │ File was deleted from a network?
  126. 252 - File read error       │     │ Probably too small a file (not a real
  127.                             │     │ archive or a corrupted one). File
  128. 253 - File not found        │     │ given as a parameter does not exist.
  129. 254 - Help screen           │     │ Appears when no parameters are given.
  130. 255 - Not recognized        │     │ File is neither an archive file nor
  131.                             │     │ supported by this version.
  132. ────────────────────────────┴─────┴─────────────────────────────────────
  133.  
  134. Ways to use
  135. -----------
  136. ARCHID
  137.          without parameters shows the short help: usage, list of
  138.          errorlevels, shortnames in 5 letters, and archive types.
  139.  
  140.          Screen automatically pauses if lines exceed the screen or pages
  141.          are not redirected anywhere else (e.g. file, printer).
  142.  
  143. ARCHID <file>
  144.          performs file identification: tells the type of an archive and
  145.          returns an errorlevel to DOS (listed above).
  146.  
  147.          For example:
  148.             C:\>archid test.arj
  149.             C:\TEST.ARJ - Recognized as ARJ archive (1).
  150.  
  151.             C:\>archid test.exe
  152.             C:\TEST.EXE - Recognized as ARJ SFX executable (101).
  153.  
  154.             C:\>archid test.a*
  155.             C:\TEST.ARJ - Recognized as ARJ archive (1).
  156.             C:\TEST.A01 - Recognized as ARJ archive (1).
  157.  
  158. ARCHID <file> <type> [type..]
  159.          As far as the is concerned, you should use the 5-letter "call
  160.          name" of the packer. This usage corresponds with the usage of
  161.          TESTFILE.
  162.  
  163.          For example:
  164.             C:\>archid test.arj zip rar lha arj
  165.             C:\TEST.ARJ - Recognized as ARJ archive (4).
  166.  
  167.          In other words, errorlevel is the one which corresponds with
  168.          the position of the type in the list.
  169.  
  170.             C:\>archid test.exe zip rar lha arj
  171.             C:\TEST.EXE - Recognized as ZIP SFX executable (255).
  172.  
  173.          However, by this usage, ARCHID always returns 255 (=not
  174.          recognized), even though it might identify the archive in
  175.          question, but the type is not listed in the parameters.
  176.  
  177. Contacts with the author
  178. ------------------------
  179. You can send me feedback, bug reports, necessary additions, and
  180. other questions by the following email: "eerheino@lpt.fi"
  181. (notice it has changed since the last version!).
  182.  
  183. You may also contact me by my BBS system, Reflection, when it opens.
  184. Just drop comment to the SysOp. The latest version may be also
  185. obtained from there by logging in as "Support Download".
  186.  
  187. Known problems
  188. --------------
  189. Archives created by PKPAK and PAK are often recognized as ARC archives,
  190. if the first file in the archive is compressed by an ARC compatible
  191. method. As far as I know, it will not be easy to get all of this work,
  192. except by going through all files in the archive, but that would slow
  193. down the algorithms quite much. For the extraction and other handling of
  194. those archives I only recommend the use of PAK, because it supports
  195. archives created by both ARC and PKPAK.
  196.  
  197. This version cannot identify any other SFX files but those created by
  198. archivers themselves; for example, an archive created by ARJX's MAKESFX
  199. is not recognized.
  200.  
  201. Request to archiver authors
  202. ---------------------------
  203. Notification to all archiver authors around the world! When you
  204. release an archiver to the international public (or it is distributed
  205. in internet): remember to include also an English version of the
  206. program, at least English document would be needed. There are too
  207. many archivers that are operating only in German, Russian, Japanese,
  208. or French. As a potential user of the archivers, I have found this
  209. very annoying because I have not teached myself those languages.
  210.  
  211. Possibly incoming
  212. -----------------
  213. - Enhanced identifying routines
  214. - Speed-ups (optimizations) to code
  215. - Separate, natural OS/2 executable
  216. - TAR and other new or relevant archivers (if you have information
  217.   about those archivers, please send me email!)
  218.  
  219. Obtaining the latest version
  220. ----------------------------
  221. As everybody knows, no program is complete. I am continuously updating
  222. this program: fixing bugs, adding formats, and optimizing code.
  223.  
  224. You can obtain the latest version of SH Archive Identifier via Internet;
  225. with web-browser: "http://ameba.lpt.fi/~eerheino/shs/shaid.htm"
  226. or via ftp: "ftp.simtel.net/pub/simtelnet/msdos/arcutils/shaid*.zip".
  227. Use your nearest Simtel.Net mirror for maximum speed!
  228.  
  229. If you are not in Internet, it may also be obtained from Reflection PCB
  230. by logging in as "Support Download". About Reflection, refer to section
  231. "Contacts with the author".
  232.  
  233. Copyrights
  234. ----------
  235. Other products mentioned in this document or the actual program:
  236.  
  237.          ACB, Associative Coder (c) George Buyanovsky
  238.          AIN                    (c) Transas Marine (UK) Ltd
  239.          AMGC                   (c) Milen Georgiev
  240.          ARC                    (c) SEA (System Enhancement Associates)
  241.          ARCID,
  242.            Archive Identifier   (c) Stacy Smith
  243.          Archive Comparison Test(c) Jeff Gilchrist
  244.          ARI                    (c) RAO Inc
  245.          ARJ, ARJSFX, JAR       (c) ARJ Software, Robert K Jung
  246.          ARJX                   (c) ROSE, Ralph Roth
  247.          ARX                    (c) Michael A. Kosior
  248.          BSA                    (c) PTS Ltd
  249.          ChArc                  (I cannot read, probably Japanese)
  250.          Codec                  (c) Telvox Teleinformatica
  251.          CrossePAC              (c) Digital Strategies
  252.          Dirks Packer, DPA      (c) Dirk Paehl
  253.          DWC                    (c) Dean W. Cooper
  254.          ESP                    (c) GyikSoft
  255.          File Format List       (c) Max Maischein
  256.          FOXSQZ                 (c) Master Creative Software, Inc.
  257.          GZIP, GNU ZIP          Part of the UN*X GNU project
  258.          HA                     (c) Harri Hirvola
  259.          HAP                    (c) Harald Feldman
  260.          HPack                  (c) Peter Gutmann
  261.          Hyper                  (c) P Sawatzki & K P Nischke
  262.          Info-Zip, ZIP          (c) Mark Adler, Richard B. Wales,
  263.                                       Jean-loup Gailly, Kai Uwe Rommel
  264.          JRchive, JRC           (c) Jayar Systems
  265.          Larc                   (c) K. Miki, H. Okumura, K. Masuyama
  266.          PakLEO, UnpakLEO,
  267.            PLL2EXE              (c) ThunderSoft, Leonardus Leonardi
  268.          LHA, LHarc, LHA SFX    (c) Haruasy Yoshizaki
  269.          LHark                  (c) Kerwin F. Medina
  270.          Limit                  (c) J Y Lim
  271.          MAR                    (c) Haruhiko Okumura, Richard Schiller
  272.          MDCD                   (Public Domain) Mike Davenport
  273.          OS/2                   (R) IBM (International Business Machines)
  274.          PAK                    (c) NoGate Consulting
  275.          PKZIP (R), PKSFX,
  276.            PKSFXjr, PKPAK       (c) PKWare Inc
  277.          Power Compressor III   (c) Marco Czudej
  278.          PUT & GET              (c) Microfox Company
  279.          Quantum, PAQ           (c) CinemaTronics
  280.          Quark                  (c) Kunz Robert
  281.          RAR                    (c) Eugene Roshal
  282.          RESOF, DESOF           (c) Spectrum Software
  283.          RKive                  (c) Malcolm Taylor
  284.          SAR                    (c) Streamline Design
  285.          SH Archive Identier    (c) SH Software, Eero T Heinonen
  286.          SKY                    (c) SkyTech
  287.          RESOF / DESOF          (c) Spectrum Software
  288.          SqWez                  (c) JM Software
  289.          SQZ                    (c) J I Hammarberg
  290.          The Stirling Compressor(c) Striling Group
  291.          TAR                    (c) Tim V. Shaporev
  292.          UC II                  (c) Ad Infinitum Programs
  293.          UFA                    (c) Igor Pavlov
  294.          X1                     (c) Stig Valentini
  295.          YAC                    (c) Aleksandras Surna
  296.          ZET (R)                (c) Oleg V Zaimkin
  297.          Zip-Archiv (ZAR)       (c) Troxler Peter
  298.          ZOO, ZOO SFX           (c) Rahul Dhesi
  299.          ZPack Lite             (c) SpeedSoft
  300.  
  301. Thanks to
  302. ---------
  303. Many thanks to Timo Muhonen and Jari Arkoma, the testers of this
  304. version, as well as Heimo Heinonen, the proof-reader of the English
  305. version of the document.
  306.  
  307. Also I want to thank for valuable user feedback: George Shadoff
  308. (new archivers), Raul Gutierrez (good suggestions [incl. wildcard
  309. support] and ideas), and Al Hall (reporting the file_id.diz problem).
  310.  
  311. I am also grateful to the maker of the Archive Comparison Test,
  312. Jeff Gilchrist, and to those WWW and FTP servers I have used to
  313. download the programs (mainly Stuba).
  314.  
  315. Version history
  316. ---------------
  317.  
  318. 2.20 (30 April 1997)
  319.          - The following formats have been added:
  320.              ARJZ, UFA, TSComp, LEO, ZAR, SKY, SOF, ZPack Lite, MP3, ZET
  321.          - Added: AIN 2.32 SFX format
  322.                   (previous version 2.20 had no SFX feature)
  323.          - Fixed: false recognition of RKive archives
  324.          - Fixed: now recognizes older ARJ SFX files than v2.20
  325.                   (tested on 0.20, 1.10, 2.00, 2.10)
  326.          - Fixed: removed special characters from file_id.diz
  327.                   (this caused problems in TriBBS systems)
  328.          - Fixed: /S (delete largest) option in ACVT.BTM
  329.  
  330. 2.10 (10 February 1997)
  331.          - The following formats have been added:
  332.              ACB, RKive, JAR, ESP (+SFX), DPA
  333.          - Strenghtened recognition of PKZIP
  334.          - Added some more errorchecks
  335.          - A little bit faster
  336.          - Fixed: did not recognize big DWC archives
  337.          - Fixed: crashed on smaller executables than 30KB
  338.          - Removed "new" ARJ SFX specification (unnecessary)
  339.  
  340. 2.00 (05 November 1996)
  341.          - In addition to normal usage (default errorlevels, 1 parameter)
  342.              the program can now be used like TESTFILE or Stacy Smith's
  343.              ARCID: "archid %1 arj zip lha rar .."
  344.          - The following formats (and possible SFXs) have been added:
  345.              AIN, AMGC, ARX, BSA, ChArc, Codec3, CrossePAC, DWC,
  346.              FOXSQZ, HAP3, Hpack, JRchive, Larc, LHark, Limit, Mar,
  347.              MDCD, Quantum, Quark, SqWez, YAC, X1
  348.          - All old & new formats have now been tested!
  349.          - Re-numbered errorlevels, normal archives correspond with the
  350.              value of 100 and below
  351.          - According to File Format List 1.50, an added a support for:
  352.            - Newer ARJ SFX's
  353.            - Older LHA SFX versions (<2.13): LHarc 1.xx, LHA 2.10
  354.          - Fixed identifying routine for the following archive types:
  355.              LHA, ZOO, GZIP
  356.          - Enhanced PKSFX identifying (also InfoZip)
  357.          - Differentiates between LHA, LHarc and SFX's of them
  358.          - Differentiates between LHarc and ARX file types
  359.          - Differentiates between LHA and LHark file types
  360.          - Differentiates between PKPAK and ARC files (special method)
  361.          - Fixed a bug in ARC/PAK files: some PAK files were identified
  362.              as ARC files.
  363.          - Optimized the old part of the source code
  364.          - Additional errorlevels 249 and 250
  365.          - Enhanced help page: it's a 2-column list with clear topics,
  366.              a screen pause and a monitor of redirection.
  367.              Formerly it was a single column non-stopping list.
  368.          - Shows the errorlevels (also error codes) in brackets.
  369.          - Shows messages "open error", "close error"
  370.  
  371. 1.00 (30 June 1996)
  372.          - First public version 1.00
  373.          - Some old and uncommon formats have been added (NOT TESTED):
  374.            ARC, GZIP, HA, HYP, PAK, SQZ, ZOO
  375.          - Assured LHA identification
  376.